class ResponseBody {
	constructor(respCode, respMsg, result) {
		this.respCode = respCode || 0;
		this.respMsg = respMsg || 'success';
		this.result = result || null;
	}

	setRespCode(respCode) {
		this.respCode = respCode;
		return this;
	}
	setRespMsg(respMsg) {
		this.respMsg = respMsg;
		return this;
	}
	setResult(result) {
		this.result = result;
		return this;
	}
}
/**
 * Context 指的是 Koa 的请求上下文，这是 请求级别 的对象，每次请求生成一个 Context 实例。所以在每一个实例中都会创建一个新的Context属性
 *
 * 此处是对于 Context的拓展  即我们可以通过 this.ctx.xxx 去访问里面的拓展信息
 */
module.exports = {
	/**
	 * 请求成功 返回值
	 * @author guzhanghua
	 * @param {*} result
	 * @param {*} respMsg
	 */
	success(result, respMsg) {
		this.body = new ResponseBody(0, respMsg || 'success', result || null);
	},

	failure(result, respMsg, respCode) {
		this.body = new ResponseBody(respCode || 1, respMsg || 'error', result || null);
	}
};
